import numpy as np

# 创建数组 - 比Python列表更高效
arr = np.array([1, 2, 3, 4, 5])
matrix = np.array([[1, 2, 3], [4, 5, 6]])

print("数组:", arr)
print("矩阵形状:", matrix.shape)  # 输出: (2, 3)

# 数学运算 - 向量化操作，无需循环
print("每个元素加10:", arr + 10)
print("每个元素平方:", arr ** 2)
print("矩阵乘法:", np.dot(matrix, matrix.T))  # 矩阵与其转置相乘

# 生成数据
zeros = np.zeros((3, 3))  # 3x3全零矩阵
ones = np.ones((2, 2))    # 2x2全1矩阵
random_data = np.random.randn(100)  # 100个正态分布随机数

# 索引和切片 - 比列表更强大
print("前三个元素:", arr[:3])
print("矩阵的第一行:", matrix[0, :])
print("条件筛选:", arr[arr > 3])  # 输出大于3的元素